package com.onpositive.knowledge.model.value.audits;

import java.util.Set;

import com.onpositive.knowledge.model.IUniverse;
import com.onpositive.knowledge.model.values.IHasAuditResult;
import com.onpositive.knowledge.model.values.ValueTraverser;

abstract public class AbstractUniverseAudit extends ValueTraverser implements IUniverseAudit {

	/**
	 * 
	 */
	private static final long serialVersionUID = -4581561319500555386L;

	public AbstractUniverseAudit() {
		super();
	}
	
	AuditSourceContainer auditSourceContainer ;
	
	private IUniverse universe;
	
	public void setResultSource( IHasAuditResult source ){
		
		if( this.auditSourceContainer == null )
			this.auditSourceContainer = new AuditSourceContainer() ;
		this.auditSourceContainer.setResultSource( source );
	}
	
	public IHasAuditResult getResultSource(){
		if( this.auditSourceContainer == null )
			return null ;
		
		return auditSourceContainer.getResultSource() ;
	}
	
	public IUniverse getUniverse() {
		return universe;
	}

	public void setUniverse(IUniverse universe) {
		this.universe = universe;
	}
	
	@Override
	public Set<String> getRequiredAudits() {
		return null;
	}
}